In a typical system on a chip system, the memory map at reset is different than the memory map used by the application. In general, a slow external non-volatile memory such as EPROM or FLASH is mapped at the bottom of the memory at reset. It contains the application setup code such as an RTOS for example. Upon reset, the CPU starts executing at address 0 in the external non-volatile memory and sets-up the application. Part of the set-up code might place the interrupt service routines and other critical sections of the codes into a fast memory (internal RAM or fast external). Once the application setup is completed, the mapping of the non-volatile memory at the bottom of the memory is disabled. At that point, the fast memory is mapped at address 0.